From 0d869553e30a4493e709525af2b97fcbcdae95f8 Mon Sep 17 00:00:00 2001 From: "jfehlig@jfehlig2.provo.novell.com" Date: Tue, 7 Nov 2006 18:14:16 -0700 Subject: [PATCH] Add support for VM.destroy RPC in libxen. Signed-off-by: Jim Fehlig --- tools/libxen/include/xen_vm.h | 8 ++++++++ tools/libxen/src/xen_vm.c | 14 ++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/tools/libxen/include/xen_vm.h b/tools/libxen/include/xen_vm.h index 7fe5d7747b..b1ff2e812e 100644 --- a/tools/libxen/include/xen_vm.h +++ b/tools/libxen/include/xen_vm.h @@ -799,4 +799,12 @@ extern bool xen_vm_get_all(xen_session *session, struct xen_vm_set **result); +/** + * Destroy the specified VM. The VM is completely removed from the system. + * This function can only be called when the VM is in the Halted State. + */ +extern bool +xen_vm_destroy(xen_session *session, xen_vm vm); + + #endif diff --git a/tools/libxen/src/xen_vm.c b/tools/libxen/src/xen_vm.c index 8915be204b..d55b07c3a9 100644 --- a/tools/libxen/src/xen_vm.c +++ b/tools/libxen/src/xen_vm.c @@ -1580,3 +1580,17 @@ xen_vm_get_uuid(xen_session *session, char **result, xen_vm vm) *result = session->ok ? xen_strdup_((char *)vm) : NULL; return session->ok; } + + +bool +xen_vm_destroy(xen_session *session, xen_vm vm) +{ + abstract_value param_values[] = + { + { .type = &abstract_type_string, + .u.string_val = vm } + }; + + xen_call_(session, "VM.destroy", param_values, 1, NULL, NULL); + return session->ok; +} -- 2.30.2